1. Technical Field
The present invention relates generally to a computer implemented method, system, and computer program product for managing application-to-application communication. More particularly, the present invention relates to a computer implemented method, system, and computer program product for self-adjusting heartbeat management between applications communicating with each other.
2. Description of the Related Art
Data processing systems communicate with each other using a variety of data communication protocols. A communication protocol is essentially a set of rules that data processing systems must obey in establishing data communications using the protocol. Among other things, data communication protocols specify the structure in which the data should be exchanged, and syntax, semantics, and sequence of the communication building blocks to be used for such exchange. Transmission control protocol/Internet protocol (TCP/IP) is one example of data communication protocols.
Applications executing on different data processing systems may communicate with each other as well. An application may send a heartbeat to another application, and receive a response therefor, to ensure that the data communication pathway between the two applications is available. A heartbeat is a message sent from one application to another, to which the other application has to respond such that the response is received at the heartbeat sending application within a predetermined response time window. If a response to a heartbeat is not received at or before the predetermined response time, the heartbeat times out. When a heartbeat times out, the heartbeat sender application understands that the data communication link between the heartbeat sender application and the heartbeat receiver/responder application is broken.
Heartbeats and responses to heartbeats can be communicated between applications using a variety of data communication protocols as well. Heartbeat timeouts often cause service disruption, failed or interrupted transactions, and generally degrade system performance.